package com.hngy.scala

import org.apache.spark.{SparkConf, SparkContext}

/**
  * 需求：通过文件创建RDD
  *  1：本地文件
  *  2：HDFS文件
  */
object CreateRddByFileScala {

  def main(args: Array[String]): Unit = {
    //创建sparkContext
    val conf = new SparkConf()
    conf.setAppName("CreateRddByFileScala")
      .setMaster("local")
    val sc = new SparkContext(conf)

    //
    var path = "D:\\b.txt"
    path = "hdfs://hadoop001:9001/word.txt"

    //读取文件数据，可以在textFile中指定生成的RDD的分区数量
    val rdd = sc.textFile(path,2)

    //获取每一行数据的长度，计算文件内数据的总长度
    val length = rdd.map(_.length).reduce(_ + _)
    println(length)
    //停止sparkContext
    sc.stop()
  }
}
